The present invention relates to an echo canceller for cancelling echoes which result from impedance mismatching in a two-wire/four-wire conversion circuit and, more particularly, to a fast convergence method and system for the echo canceller.
An echo canceller has been used to cancel echoes which sound unpleasant and develop in satellite circuits, long-distance circuits and other telephone circuits which involve substantial transmission delays. It has also been used for simultaneously transmitting two-way data utilizing a voice band (full-duplex modem). Another possible application of an echo canceller is the means for realizing two-wire two-way baseband data transmission which employs pair cables. In this respect, study is now under way to use echo cancellers as one hopeful means for digitizing subscriber-accessed transmission paths of private networks or public networks.
While the following description concentrates on two-wire two-way baseband data communications as an exemplary application of an echo canceller, the present invention is also applicable to an echo canceller for speech or one for modems as will be described.
Referring to FIG. 1 of the drawing, a prior art echo canceller is shown in a block diagram. The echo canceller comprises an input terminal 10, an output terminal 12, a transmitter section 14, a receiver section 16, a digital-to-analog converter (DAC) 18, an adaptive digital filter (ADF) 20, a subtractor 22, a sample hold (SH) circuit 24, an analog-to-digital converter (ADC) 26, a multiplier 28 whose coefficient is 2.alpha. (.alpha. being a constant), a low pass filter (LPF) 30, a hybrid circuit (HYB) 32, and a two-wire communication path 34.
The circuit shown in FIG. 1 is assumed to be connected in opposing manner to another such circuit by a two-wire communication path. Taking subscriber's cables for example, one of the opposite circuits is installed in a switching office and the other in a subscriber's station. Further, for simplicity, the description will proceed assuming the baseband transmission and an echo canceller installed in a subscriber's station. A transmit signal from a subscriber's terminal is applied through the input terminal 10 to the transmitter 14 and ADF 20. The transmit signal is assumed to have been scrambled to have no correlation with a received signal. The transmitter 14 is an interface between the subscriber's terminal and the two-wire communication path 34 and may comprise a unipolar/bipolar converter, a band limit filter, a buffer amplifier or the like. The output of the transmitter 14 is sent out to the transmission path 34 via the hybrid 32. At the same time, the transmitter output is routed to the LPF 30 as echoes due to a failure in the hybrid 32, impedance mismatching or like cause.
Meanwhile, a signal received from the other party (switching office in this case) through the two-wire transmission line 34 and hybrid 32 is also applied to the LPF 30. Assume that an echo signal is e(k) (where k is an index indicative of time), a received signal is s(k), and noise effecting the received signal s(k) in the transmission line 34 is n(k). Then, an output signal u(k) of the LPF 30 is expressed as: EQU u(k)=e(k)+s(k)+n(k) Eq. (1)
Now, an echo canceller is directed to generating a replica e(k) of the echo signal e(k) to thereby cancel echoes. In FIG. 1, the closed loop made up of the ADF 20, DAC 18, subtractor 22, sample hold 24, ADC 26 and multiplier 28 is used to adaptively generate the echo replica e(k). This gives an output signal of the sample hold 24 as represented by r(k): EQU r(k)=e(k)-e(k)+s(k)+n(k) Eq. (2)
where e(k) is an output signal of the DAC 18 which is routed to the subtractor 22. In the Eq. (2), {e(k)-e(k)} is referred to as the "residual echo". The receiver 16 may comprise a bipolar/unipolar conversion circuit, a Nyquist filter, a line equalizer, a buffer amplifier and the like in accordance with requirements.
An example of the adaptive digital filter or ADF 20 included in the construction of FIG. 1 is shown in FIG. 2. In FIG. 2, the ADF 20 comprises input terminals 36 and 38, delay elements 40.sub.0, 40.sub.1, 40.sub.2, . . . , 40.sub.N-2, coefficient generators 42.sub.0, 42.sub.1, 42.sub.2, . . . , 42.sub.N-1, multipliers 44.sub.0, 44.sub.1, 44.sub.2, . . . , 44.sub.N-1, an adder 46, and an output terminal 48.
In FIG. 2, the input signal a(k) applied to the input terminal 36, the input signal r'(k) applied to the input terminal 38, and the output signal e'(k) appearing at the output terminal 48 correspond respectively to the signals a(k), r'(k) and e'(k) which are associated with the ADF 20 shown in FIG. 1. The signal a(k) coming in through the input terminal 36 is fed simultaneously to the delay element 40.sub.0, multiplier 44.sub.0 and coefficient generator 42.sub.0. The delay elements 40.sub.0, 40.sub.1, 40.sub.2, . . . , 40.sub.N-2 are connected serially in this order and are individually constructed as shown in FIG. 2 at the junctions thereof. That is, the output signal a(k-m-1) of the delay element 40.sub.m is applied simultaneously to the delay element 40.sub.m+1, multiplier 44.sub.m+1 and coefficient generator 42.sub.m+1, where m is a natural number.
The signal r'(k) applied to the input terminal 38 is routed to the coefficient generators 42.sub.0, 42.sub.1, 42.sub.2, . . . , 42.sub.N-1 at the same time. In response to the input signal r'(k) and a(k-m), the coefficient generator 42.sub.m produces a coefficient C.sub.m (k) which is delivered to the multiplier 44.sub.m. The outputs of the N multipliers 44.sub.0, 44.sub.1, 44.sub.2, . . . , 44.sub.N-1 are summed up by the adder 46 and the sum e'(k) is fed to the output terminal 48. In this manner, an echo replica e'(k) can be generated from the input signal a(k) on the basis of a value of the error signal r'(k).
The amount of delay effected by the delay elements 40.sub.0, 40.sub.1, 40.sub.2, . . . , 40.sub.N-2 is equal to the transmit data rate, T second, and which may be realized in practice by means of a flip-flop. In the coefficient generator 42.sub.m, the coefficient is updated by the steepest descent or like adaptation algorithm in order to make the error signal r'(k) minimum. Basically, the adaptive digital filter shown in FIG. 2 is a transversal filter; when the coefficients have been converged, each coefficient is approximate to the impulse response of an echo bus which is made up of the transmitter 14, hybrid 32 and LPF 30.
In FIG. 2, the coefficient generator 42.sub.m performs an operation shown below: EQU c.sub.m (k)=c.sub.m (k-1)+r'(k-1).multidot.a(k-m) Eq. (3)
In the Eq. (3), r'(k) is expressed as: EQU r'(k)=2.alpha..multidot.R[r(k)] Eq. (4)
where R [.multidot.] indicates quantizing r(k) into "n" bits which is performed by the ADC 26. Based on the Eqs. (3) and (4), the tap coefficients C.sub.m (k) of the transversal filter are updated and the adaptation process is performed such that the tap coefficients approach the inpulse response of the echo bus with the lapse of time.
The ADC 26 shown in FIG. 1 has heretofore required an accuracy of about eight bits and its size and, therefore, power consumption increases with data rate. This brings about a fear that the ADC 26 obstructs a future effort for realizing a one-chip LSI design of the whole circuitry of FIG. 1. In light of this, there has been proposed a method which employs a polarity discriminator circuit. This alternative method is one of approximation algorithms which corrects an ADF tap coefficient using the signs of the error signal and, for this reason, it is generally referred to as the "sign algorithm". In this instance, the Eq. (4) is rewritten as: EQU r'(k)=2.alpha..multidot.sign[r(k)] Eq. (5)
where the symbol [.multidot.] means picking up only the sign of r(k). That is, the following equation is assumed to hold: ##EQU1##
In order to attain a signal-to-noise (S/N) ratio equivalent to one provided by the ADC 26 in conjunction with the sign algorithm using the Eqs. (3) and (5), it is necessary to select .alpha. in the Eq. (5) such that it is sufficiently smaller than .alpha. in the Eq. (4). While the magnitude of .alpha. concerned depends upon the received signal level, it should be selected to be about 1/100 in practice. Therefore, as will be apparent from the Eq. (3), the amount of each tap coefficient correction per one iteration is very small, resulting in about hundred times longer convergence time.